#ifndef __IMPLEMENTOR__
#define __IMPLEMENTOR__

#include <iostream>

using namespace std;


class Implementor
{
	public:
		Implementor() {};
		virtual ~Implementor() {};
		
		virtual void OperationImp() = 0;

};

class ImplementorA: public Implementor
{
	public:
		ImplementorA() {};
		virtual ~ImplementorA() {};

		virtual void OperationImp()
		{
			cout << "ImplementorA  Operation\n";
			return;
		}
		
		
};

class ImplementorB: public Implementor
{
	public:
		ImplementorB() {};
		virtual ~ImplementorB() {};

		virtual void OperationImp()
		{
			cout << "ImplementorB Operation\n";
			return;
		}
};


#endif
